home *** CD-ROM | disk | FTP | other *** search
/ Meeting Pearls 4 / Meeting Pearls Vol. IV (1996)(GTI - Schatztruhe)[!].iso / Pearls / dev / Language / CLisp / affi1.fas next >
Text File  |  1996-08-12  |  11KB  |  234 lines

  1. (SYSTEM::VERSION '(SYSTEM::CLISP2 13. LISP:T 130695.))
  2. #Y(#:TOP-LEVEL-FORM-1 #13Y(00 00 00 00 00 01 D8 37 02 30 E3 19 01) "AFFI")
  3. #Y(#:TOP-LEVEL-FORM-2
  4.    #30Y(00 00 00 00 00 01 D8 62 1A 0D 86 01 00 14 D9 70 D7 37 01 30 DC 82 01 AB
  5.         8C 96 6F 00 19 03
  6.        )
  7.    ("MEM-READ" "MEM-WRITE" "MEM-WRITE-VECTOR" "NZERO-POINTER-P") "SYS"
  8.   )
  9. #Y(#:TOP-LEVEL-FORM-3 #13Y(00 00 00 00 00 01 D8 37 01 30 DA 19 01)
  10.    (DECLARE-LIBRARY-BASE REQUIRE-LIBRARY-FUNCTIONS OPEN-LIBRARY CLOSE-LIBRARY
  11.      WITH-OPEN-LIBRARY DEFFLIBFUN DECLARE-LIBRARY-FUNCTION FLIBCALL MLIBCALL
  12.      NZERO-POINTER-P MEM-READ MEM-WRITE MEM-WRITE-VECTOR
  13.   ))
  14. #Y(#:TOP-LEVEL-FORM-4
  15.    #20Y(00 00 00 00 00 01 D8 30 5D D9 8B 52 04 D9 DA 30 55 C4 19 01)
  16.    (SPECIAL *LIBRARIES-ALIST*) *LIBRARIES-ALIST* ((SYSBASE 0. "exec.library"))
  17.   )
  18. #Y(#:TOP-LEVEL-FORM-5 #16Y(00 00 00 00 00 01 D8 2E 01 D8 DA 31 82 C3 19 01)
  19.    RESET-LIBRARIES-AT-INIT SYSTEM::REMOVE-OLD-DEFINITIONS
  20.    #Y(RESET-LIBRARIES-AT-INIT
  21.       #26Y(00 00 00 00 00 01 6A 00 62 1A 08 86 01 00 77 30 56 82 01 AB 8C 96 74
  22.            00 19 03
  23.           )
  24.       *LIBRARIES-ALIST*
  25.   )  )
  26. #Y(#:TOP-LEVEL-FORM-6 #17Y(00 00 00 00 00 01 D8 6A 01 37 03 30 BB 0F 01 19 01)
  27.    RESET-LIBRARIES-AT-INIT SYSTEM::*INIT-HOOKS*
  28.   )
  29. #Y(#:TOP-LEVEL-FORM-7
  30.    #22Y(00 00 00 00 00 01 D8 2E 01 D8 DA DB 2C 03 04 D8 DD 31 82 C3 19 01)
  31.    DECLARE-LIBRARY-BASE SYSTEM::REMOVE-OLD-DEFINITIONS FUNCTION
  32.    "Associate the SYMBOL referencing library NAME and import it."
  33.    SYSTEM::%SET-DOCUMENTATION
  34.    #Y(DECLARE-LIBRARY-BASE
  35.       #93Y(00 02 00 00 00 03 AC 8E 8D 2F AB 8E 09 2B AC 71 8C DC 7F D7 02 14 6A
  36.            05 DE 37 02 70 BE 92 00 23 AC 9C 5B 5B 77 37 04 8B 3E 23 DF E0 E1 6D
  37.            03 03 9C 5B 5B 77 9F 14 32 02 1E D8 D9 DA 6D 03 03 AD 9E 1A 72 AD E2
  38.            AE 7A 03 0E 05 5C 0F 05 16 01 E3 AD 7A 02 30 5D AC 37 01 30 DC 9D 19
  39.            03
  40.           )
  41.       "Basename ~S not a keyword or libraryname ~S not a string"
  42.       "Base ~S kein Schlüsselwort oder Libraryname ~S kein String"
  43.       "La base ~S n'est pas un mot-clé ou alors le nom de librairie ~S n'est pas une chaîne"
  44.       SYSTEM::LANGUAGE #.(SYSTEM::%FIND-PACKAGE "AFFI") *LIBRARIES-ALIST*
  45.       #.#'EQ "Library redefinition: old ~S, new ~S"
  46.       "Libraryredefinition: alt ~S, neu ~S"
  47.       "Redéfinition d'une librarie : avant ~S, maintenant ~S" 0. SPECIAL
  48.   )  )
  49. #Y(#:TOP-LEVEL-FORM-8 #16Y(00 00 00 00 00 01 D8 2E 01 D8 DA 31 82 C3 19 01)
  50.    CHECK-LIBRARY-BASE SYSTEM::REMOVE-OLD-DEFINITIONS
  51.    #Y(CHECK-LIBRARY-BASE
  52.       #28Y(00 01 00 00 00 02 AB 6A 00 D9 37 02 30 BE 1D 0A DA DB DC 6D 03 05 AC
  53.            32 01 1E 19 02
  54.           )
  55.       *LIBRARIES-ALIST* #.#'EQ "Unknown library: ~S" "Unbekannte Library: ~S"
  56.       "Librairie inconnue : ~S" SYSTEM::LANGUAGE
  57.   )  )
  58. #Y(#:TOP-LEVEL-FORM-9
  59.    #22Y(00 00 00 00 00 01 D8 2E 01 D8 DA DB 2C 03 04 D8 DD 31 82 C3 19 01)
  60.    OPEN-LIBRARY SYSTEM::REMOVE-OLD-DEFINITIONS FUNCTION
  61.    "Returns library address or NIL if it failed. The library must be known."
  62.    SYSTEM::%SET-DOCUMENTATION
  63.    #Y(OPEN-LIBRARY
  64.       #72Y(00 01 00 00 00 02 AB 6E 00 AC 8B 52 19 D9 8B 52 26 DA DB 2F 04 14 DD
  65.            9D 5B 5B 77 DE 6D 04 07 AA 87 08 18 00 19 04 9B 5B 77 71 97 94 01 AB
  66.            30 AC 16 01 AC 30 51 19 03 0E 01 1A 5A 93 01 AB 70 55 94 02 E1 30 AC
  67.            15 19 04
  68.           )
  69.       CHECK-LIBRARY-BASE SYSBASE 4. * MEM-READ #((-552. . 26.) * STRING 2.) 0.
  70.       SYSTEM::%LIBCALL NZERO-POINTER-P 1.
  71.   )  )
  72. #Y(#:TOP-LEVEL-FORM-10 #16Y(00 00 00 00 00 01 D8 2E 01 D8 DA 31 82 C3 19 01)
  73.    CLOSE-LIBRARY SYSTEM::REMOVE-OLD-DEFINITIONS
  74.    #Y(CLOSE-LIBRARY
  75.       #65Y(00 01 00 00 00 02 AB 6E 00 AC 8C 52 26 9B 5B 77 71 98 94 01 AB 7F AC
  76.            00 8E 92 13 DD 8B 52 1E DE DF 2F 08 14 E1 AE 70 51 2C 03 0A AC 30 56
  77.            16 01 02 19 02 D9 DA DB 6D 03 04 AD 32 01 1E 0E 05 1A 62
  78.           )
  79.       CHECK-LIBRARY-BASE "Library ~S is not open"
  80.       "Library ~S ist gar nicht geöffnet" "La librairie ~S n'est pas ouverte"
  81.       SYSTEM::LANGUAGE SYSBASE 4. * MEM-READ #((-414. . 10.) NIL *)
  82.       SYSTEM::%LIBCALL
  83.   )  )
  84. #Y(#:TOP-LEVEL-FORM-11 #16Y(00 00 00 00 00 01 D8 2E 01 D8 DA 31 82 C3 19 01)
  85.    CHECK-LIBRARY-NAME SYSTEM::REMOVE-OLD-DEFINITIONS
  86.    #Y(CHECK-LIBRARY-NAME
  87.       #28Y(00 01 00 00 00 02 AB 8E 09 0B AB 6A 00 D9 37 01 DA 30 C1 1D 05 AB 2E
  88.            03 19 02 19 02
  89.           )
  90.       *LIBRARIES-ALIST* #.#'STRING-EQUAL #.#'SECOND CHECK-LIBRARY-BASE
  91.   )  )
  92. #Y(#:TOP-LEVEL-FORM-12
  93.    #24Y(00 00 00 00 00 01 D8 2E 01 D8 DA DB 2C 03 04 D8 DD C9 79 31 82 C3 19 01
  94.        )
  95.    WITH-OPEN-LIBRARY SYSTEM::REMOVE-OLD-DEFINITIONS FUNCTION
  96.    "If necessary opens library NAME, and executes BODY, finally closing it.
  97. Returns NIL if the library can't be opened.  Unlike OPEN-LIBRARY, NAME may
  98. be a string, which must be the name of a known library."
  99.    SYSTEM::%SET-DOCUMENTATION SYSTEM::MACRO
  100.    #Y(WITH-OPEN-LIBRARY
  101.       #63Y(00 01 00 01 00 08 AC 71 48 D8 8F 01 2F 2C 9D 5B 5A 77 9E 5B 78 AB 8E
  102.            09 05 AB 2E 02 5A F7 DB DC DD AE 7A 02 7A 02 DE DF E0 A0 79 7A 02 E1
  103.            DD B1 7A 02 7A 02 7A 03 60 03 19 05 AC 2E 01 19 03
  104.           )
  105.       2. SYSTEM::MACRO-CALL-ERROR CHECK-LIBRARY-NAME WHEN OPEN-LIBRARY QUOTE
  106.       UNWIND-PROTECT MULTIPLE-VALUE-PROG1 PROGN CLOSE-LIBRARY
  107.   )  )
  108. #Y(#:TOP-LEVEL-FORM-13
  109.    #25Y(00 00 00 00 00 01 D8 30 5D D9 8B 52 09 D9 37 05 C5 F9 70 66 30 55 C4 19
  110.         01
  111.        )
  112.    (SPECIAL *LIBRARY-FUNCTIONS*) *LIBRARY-FUNCTIONS* EQ
  113.   )
  114. #Y(#:TOP-LEVEL-FORM-14 #16Y(00 00 00 00 00 01 D8 2E 01 D8 DA 31 82 C3 19 01)
  115.    IMPORT-OR-LOOSE SYSTEM::REMOVE-OLD-DEFINITIONS
  116.    #Y(IMPORT-OR-LOOSE
  117.       #38Y(00 01 00 00 00 02 AB 71 8C 37 01 70 D8 92 00 04 14 9E 22 0B 9B 1D 0D
  118.            AC 37 01 30 DC 9D 19 03 D8 AD 32 01 1E 19 03
  119.           )
  120.       "Another symbol ~A already exists"
  121.   )  )
  122. #Y(#:TOP-LEVEL-FORM-15
  123.    #22Y(00 00 00 00 00 01 D8 2E 01 D8 DA DB 2C 03 04 D8 DD 31 82 C3 19 01)
  124.    REQUIRE-LIBRARY-FUNCTIONS SYSTEM::REMOVE-OLD-DEFINITIONS FUNCTION
  125.    "Loads foreign function definitions for library NAME if necessary."
  126.    SYSTEM::%SET-DOCUMENTATION
  127.    #Y(REQUIRE-LIBRARY-FUNCTIONS
  128.       #162Y(00 01 00 00 80 1C 00 01 00 00 3A 01 02 7D 01 00 2A 01 AD 6E 01 9B
  129.             5A 0B 01 00 9B 5B 5B 77 AA AB 37 07 C5 F7 70 F5 2F 03 AE 8D 0D 23
  130.             AE 02 21 80 64 00 19 06 DF E0 E1 6D 03 0A B1 AD 32 02 1E E3 E4 AC
  131.             E5 E6 E7 E8 E9 6D 03 0A EA B1 32 06 1F 67 02 00 62 B0 62 AB 8B 96
  132.             32 86 01 00 86 01 00 AA 8E 09 5C AA 37 02 70 49 DC 70 D7 AA 6A 05
  133.             37 01 70 67 92 00 FF BE 77 06 09 00 22 FF B7 AB 2E 06 16 01 F6 83
  134.             02 82 01 14 8C 96 51 AC 30 A7 16 02 F6 3F 02 19 06 AC 6C 13 01 6A
  135.             05 30 6A 06 02 00 19 06
  136.            )
  137.       :IMPORT CHECK-LIBRARY-NAME "affi" REQUIRE
  138.       #1=#.(SYSTEM::%FIND-PACKAGE "AFFI") *LIBRARY-FUNCTIONS* IMPORT-OR-LOOSE
  139.       "Unknown function of library ~S: ~S"
  140.       "Funktion in Library ~S unbekannt: ~S"
  141.       "Fonction inconnue dans la librarie ~S : ~S" SYSTEM::LANGUAGE TYPE-ERROR
  142.       :DATUM :EXPECTED-TYPE (OR STRING) "~A~%The value is: ~S"
  143.       "~A~%Der Wert ist: ~S" "~A~%La valeur est : ~S"
  144.       "Der Wert von FNAME muß einem der Typen STRING angehören."
  145.       #Y(REQUIRE-LIBRARY-FUNCTIONS-1
  146.          #27Y(00 02 00 00 00 03 93 01 07 00 01 22 06 AC 71 8A 23 01 03 00 19 03
  147.               AC 2E 02 19 03
  148.              )
  149.          NIL #1# IMPORT-OR-LOOSE
  150.   )  )  )
  151. #Y(#:TOP-LEVEL-FORM-16 #16Y(00 00 00 00 00 01 D8 2E 01 D8 DA 31 82 C3 19 01)
  152.    DEFFLIBFUN SYSTEM::REMOVE-OLD-DEFINITIONS
  153.    #Y(DEFFLIBFUN
  154.       #79Y(00 05 00 00 01 00 AF 2E 00 AE 8E 0F 38 B0 6A 05 37 01 70 67 B0 DE B1
  155.            A2 79 B0 7A 02 AF 32 02 25 79 AB AB 8D 05 1A 92 01 0E 6A 07 E0 E1 E2
  156.            6D 03 04 B4 AE AE 2C 05 0B 6A 05 B3 AB AD 30 68 16 01 16 02 A1 19 07
  157.            D9 DA DB 6D 03 04 AF 32 01 1E
  158.           )
  159.       CHECK-LIBRARY-BASE "Offset must be a fixnum: ~S"
  160.       "Offset ist kein FIXNUM: ~S" "Le déplacement ~S n'est pas de type FIXNUM"
  161.       SYSTEM::LANGUAGE *LIBRARY-FUNCTIONS* SIMPLE-VECTOR *ERROR-OUTPUT*
  162.       "~&;; redefining foreign library function ~S~%;;  from ~S to ~S~%"
  163.       "~&;; Definitionsänderung der foreign-library Funktion ~S~%;;  von ~S nach ~S.~%"
  164.       "~&;; Redéfinition de la fonction étrangère ~S~%;;  de ~S en ~S~%" FORMAT
  165.   )  )
  166. #Y(#:TOP-LEVEL-FORM-17 #16Y(00 00 00 00 00 01 D8 2E 01 D8 DA 31 82 C3 19 01)
  167.    CALC-REGISTER-MASK SYSTEM::REMOVE-OLD-DEFINITIONS
  168.    #Y(CALC-REGISTER-MASK
  169.       #25Y(00 02 00 00 00 03 00 2A 01 7E 02 00 00 AA 6C 00 01 AE 71 49 D9 9D 33
  170.            19 05
  171.           )
  172.       #Y(CALC-REGISTER-MASK-CALC
  173.          #54Y(00 02 00 00 00 03 91 02 11 9C 19 03 DB DC DD 6D 03 06 93 05 32 01
  174.               1E 92 02 6F 94 02 AC D9 71 D2 93 04 DA 37 06 07 00 01 F7 8E 60 60
  175.               14 71 97 72 02 3B 28 02 05 61
  176.              )
  177.          NIL 4. (:D0 :D1 :D2 :D3 :D4 :D5 :D6 :D7 :A0 :A1 :A2 :A3 :A4 :A5 :A6)
  178.          "Unknown register: ~S" "Unbekanntes Register: ~S"
  179.          "Registre inconnu : ~S" SYSTEM::LANGUAGE
  180.         )
  181.       0.
  182.   )  )
  183. #Y(#:TOP-LEVEL-FORM-18
  184.    #18Y(00 00 00 00 00 01 D8 2E 01 D8 DA C6 79 31 82 C3 19 01)
  185.    DECLARE-LIBRARY-FUNCTION SYSTEM::REMOVE-OLD-DEFINITIONS SYSTEM::MACRO
  186.    #Y(DECLARE-LIBRARY-FUNCTION
  187.       #157Y(00 01 00 01 00 08 AC 71 48 D8 8F 01 2F 1A 9D 5B 77 9E 5B 5B 77 9F
  188.             5B 5B 78 AB 2E 02 77 DB AC 37 03 30 BE 78 AA 62 1A 25 AC 2E 01 19
  189.             03 DC DD DE 6D 03 07 AB B2 32 02 1E 86 01 00 77 8E 08 6E 9B 5B 5B
  190.             77 8E 8D 67 D8 AB 8B 9F 62 82 01 AB 8C 96 67 16 02 E0 E1 B0 7A 02
  191.             E1 AE 7A 02 E1 E2 B1 37 03 30 BE 5B 77 7A 02 E1 E3 B0 72 00 17 E4
  192.             6F 0D 7A 02 E1 E6 B3 37 03 30 BE 5B 77 7A 02 62 B1 1A 0E 93 00 E1
  193.             9C 5B 77 7A 02 83 02 16 01 82 00 9B 20 6F 16 01 AA 30 A7 16 01 61
  194.             06 19 08
  195.            )
  196.       3. SYSTEM::MACRO-CALL-ERROR CHECK-LIBRARY-NAME :ARGUMENTS
  197.       "Invalid parameter specification ~S in function ~S"
  198.       "Ungültige Parameterspezifikation ~S in ~S"
  199.       "Spécification invalide d'argument ~S pour la fonction ~S"
  200.       SYSTEM::LANGUAGE DEFFLIBFUN QUOTE :OFFSET #.#'THIRD #.#'EQ
  201.       CALC-REGISTER-MASK :RETURN-TYPE
  202.   )  )
  203. #Y(#:TOP-LEVEL-FORM-19
  204.    #37Y(00 00 00 00 00 01 D8 2E 01 D8 DA DB 2C 03 04 D8 DD 31 82 DE 2E 01 DE DA
  205.         DF 2C 03 04 DE E0 CC 79 31 82 C9 19 01
  206.        )
  207.    FLIBCALL SYSTEM::REMOVE-OLD-DEFINITIONS FUNCTION
  208.    "Call library function NAME with any number of ARGS."
  209.    SYSTEM::%SET-DOCUMENTATION
  210.    #Y(FLIBCALL
  211.       #20Y(00 01 00 00 01 17 AC C3 73 D9 93 01 70 51 94 02 A0 9A 02 04)
  212.       #1=#Y(FUNCTION-INFO
  213.             #27Y(00 01 00 00 00 02 AB 6A 00 37 01 30 67 1D 0A D9 DA DB 6D 03 04
  214.                  AC 32 01 1E 19 02
  215.                 )
  216.             *LIBRARY-FUNCTIONS* "Unknown library function: ~S"
  217.             "Unbekannte Libraryfunktion: ~S"
  218.             "Fonction d'une librairie inconnue : ~S" SYSTEM::LANGUAGE
  219.            )
  220.       #.#'SYSTEM::%LIBCALL
  221.      )
  222.    MLIBCALL "Call library function NAME with ARGS." SYSTEM::MACRO
  223.    #Y(MLIBCALL
  224.       #70Y(00 01 00 01 00 08 AC 71 48 D8 8F 01 2F 25 9D 5B 77 9E 5B 78 AB C5 73
  225.            AB 71 48 DB 94 02 71 48 72 02 35 90 01 2D 12 DC 93 01 DD 94 03 7A 02
  226.            9F 61 03 19 06 AC 2E 01 19 03 DE DF E0 E1 6D 03 0A AE AE 71 48 32 02
  227.            1F
  228.           )
  229.       2. SYSTEM::MACRO-CALL-ERROR #1# -2. SYSTEM::%LIBCALL QUOTE PROGRAM-ERROR
  230.       "Bad number of arguments for ~S: ~S"
  231.       "Falsche anzahl an Argumenten für ~S: ~S"
  232.       "Mauvais nombre d'arguments pour ~S : ~S" SYSTEM::LANGUAGE
  233.   )  )
  234.